草庐IT

database - Windows平台下的Redis

全部标签

golang windows服务包初始化设置

我正在尝试使用这个包创建一个golangwindows服务godoc.org/golang.org/x/sys/windows/svc一切正常,直到我添加一个初始化函数来初始化设置。然后服务无法启动。我试图通过这个包加载config.jsongithub.com/spf13/viper我得到的错误是:无法启动服务:服务没有及时响应启动或控制请求。 最佳答案 @JimB谢谢。就是这样,在调试中运行它会在exe所在的文件夹中查找,在服务中运行时,它会在system32文件夹中查找。我安装了github.com/kardianos/ose

postgresql - Go database/sql 改变表名的大小写

我正在尝试使用database/sql和github.com/lib/pqPostgres驱动程序查询数据库。我遇到的错误是:pq:relation"itemprices_itemsale"doesnotexist但是看看我的查询:rows,err:=db.Query("SELECT*FROM\"itemPrices_itemsale\"LIMIT10")您会注意到表名中的大写“P”。我已经了解到,如果没有引用,Postgres会将名称折叠成小写字母。我引用了我的表名,所以我不太确定为什么会这样。我相当确定这就是问题所在,因为我能够使用类似Python程序中的表名查询表,并且一切都按预

go - 如何在 Golang for windows 中以编程方式更改应用程序优先级?

我有CPU密集型任务,我希望系统和用户程序具有更高的优先级,以便我的Golang应用程序仅在系统空闲时运行,或者更好地使用空闲CPU内核。像syscall.Setpriority(whichint,whoint,prioint)(err错误)但这只适用于Linux而不是Windows。提前致谢 最佳答案 Windows的等价物是SetPriorityClass. 关于go-如何在Golangforwindows中以编程方式更改应用程序优先级?,我们在StackOverflow上找到一个类

c++ - 在 Windows 上使用 C++ 在本地发送 POST 请求

我在同一台电脑上(在Windows10上)有一个c++客户端和一个golang服务器,我希望客户端向服务器发送POST请求。我要发送的请求是/test请求。两个项目编译运行都很好,但是请求没有被客户端处理,即使服务器显示"HTTP-GA-SERVER:POSTSuccessfullysent"这是C++代码:#include#include"ga-http-post.h"intsendPostToMushroom(HttpRequestTypereq,void*metrics){WSADATAwsaData;if(WSAStartup(MAKEWORD(2,2),&wsaData)!=

windows - 如何在 Windows 中删除自身(可执行文件)?

packagemainimport"os"funcmain(){err:=os.Remove(os.Args[1])iferr!=nil{panic(err)}}编译这个GOOS=windowsGOARCH=386gobuildtest.go然后用wine运行Z:\tmp>test.exetest.exefixme:process:SetProcessPriorityBoost(0xffffffff,1):stubpanic:removetest.exe:Accessdenied.goroutine1[running]:panic(0x462c40,0x5b3f9ca0)/usr/lo

Goroutine 在 Windows 和 Linux 上的行为不同

我是GO的新手。我有以下遗留代码。vardb*sql.DBfuncinit(){gofeedChan()connString:=os.Getenv("DB_CONN")varerrerrordb,err=sql.Open("postgres",connString)iferr!=nil{log.Fatalf("Failedtoconnecttodatabaseat%q:%q\n",connString,err)}//confirmconnectioniferr=db.Ping();err!=nil{log.Fatalf("Unabletopingdatabaseat%q:%q\n",c

database - Golang 测试,调用数据库 Prepare 应该会失败,但实际上并没有

我正在借助gosqlmock编写一些测试代码。以下代码不验证准备好的语句是否具有正确的查询。主要代码是这样的://main.gopackagemainimport"database/sql"functestFunction(db*sql.DB){db.Prepare("SELECT")}funcmain(){}和测试代码://main_test.gopackagemainimport("testing""github.com/stretchr/testify/assert"sqlmock"gopkg.in/DATA-DOG/go-sqlmock.v1")funcTestPrepare(

sql - 如何重置从 go database/sql pool 获取的连接状态?

如果我执行db.exec("settime_zone="+00:00""),执行SQL的连接状态time_zone将更改连接会放回池中吗?如果是这样,它是否会被另一个不知道连接状态已更改的处理器重用? 最佳答案 正确的方法是在连接字符串中设置时区:sql.Open("mysql","root@tcp(127.0.0.1:3306)/dbname?charset=utf8&parseTime=true&time_zone=%2B00%3A00")请注意,time_zone值必须经过urlencoded。您也可以在conn字符串中设置其

windows - 如何从剪贴板内存 (uintptr) 中检索图像数据缓冲区?

我正在尝试将系统调用与user32.dll结合使用以获取剪贴板的内容。我希望它是来自打印屏幕的图像数据。现在我得到了这个:ifopened:=openClipboard(0);!opened{fmt.Println("FailedtoopenClipboard")}handle:=getClipboardData(CF_BITMAP)//getbufferimg,_,err:=Decode(buffer)我需要使用句柄将数据放入可读缓冲区。我从github上的AllenDang/w32和atotto/clipboard获得了一些灵感。基于atotto的实现,以下内容适用于文本:text

go - 在 windows 上运行 linux 的编译代码

所以我在Windows(10)forLinux上交叉编译了Go代码,我实际上能够在Windows和Linux上运行相同的可执行文件,这怎么可能? 最佳答案 那就是新的WindowsSubsystemforLinux(WSL),可以在Windows10上本地运行LinuxELF二进制文件。 关于go-在windows上运行linux的编译代码,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi